difference between encoding and decoding